Configuring Specific UDP Ports using Tag-based Routing

You can configure the device to use a specific local UDP port for each SIP entity (e.g., PBX) communicating with a common proxy server (e.g., ITSP). The figure below illustrates an example scenario of such an implementation, whereby the device uses a specific local UDP port (e.g., 6001, 6002, and 6003) for each IP PBX, on the leg interfacing with the proxy server:

For each IP PBX, the device sends SIP messages to the proxy server using the specific local, UDP port on the leg interfacing with the proxy server. For SIP messages received from the proxy server, the device routes the messages to the appropriate IP PBX according to the local UDP port on which the message was received. On the leg interfacing with the IP PBXs, the device uses the same local UDP port (e.g., 5060) for all IP PBXs (send and receive).

To configure this feature, you need to configure the SIP Interface of the proxy server with a special UDP port range, and use tag-based routing with Call Setup Rules to specify the exact UDP port you want assigned to each SIP entity (IP PBX), from the SIP Interface port range. The following procedure describes how to configure the device to use a specific local UDP port per SIP entity on the leg interfacing with a proxy server that is common to all the SIP entities. To facilitate understanding, the procedure is based on the previous example.

To configure specific UDP ports for SIP entities communicating with common proxy server:
1. Open the SIP Interfaces table (see Configuring SIP Interfaces), and then configure the following SIP Interfaces:
SIP Interface for leg interfacing with IP PBXs (local UDP port 5060 is used):

General

Index

1

Name

PBX

Network Interface

WAN

UDP Port

5060

SIP Interface for leg interfacing with proxy server (specific local UDP ports are later taken from this port range):

General

Index

2

Name

ITSP

Network Interface

LAN

UDP Port

5060

Additional UDP Ports

6000-7000

For guidelines on configuring the 'Additional UDP Ports' parameter, see Configuring SIP Interfaces.

2. Open the IP Groups table (see Configuring IP Groups), and then configure the following IP Groups:
IP Group for the first IP PBX ("Type" and "Port" tags are later used to identify the IP PBX and assign it a local UDP port 6001 on the leg interfacing with the proxy server):

General

Index

1

Name

PBX-1

Type

Server

SBC Advanced

Call Setup Rules Set ID

1

Tags

Type=PBX;Port=6001

IP Group for the second IP PBX ("Type" and "Port" tags are later used to identify the IP PBX and assign it a local UDP port 6002 on the leg interfacing with the proxy server):

General

Index

2

Name

PBX-2

Type

Server

SBC Advanced

Call Setup Rules Set ID

1

Tags

Type=PBX;Port=6002

IP Group for the third IP PBX ("Type" and "Port" tags are later used to identify the IP PBX and assign it a local UDP port 6003 on the leg interfacing with the proxy server):

General

Index

3

Name

PBX-3

Type

Server

SBC Advanced

Call Setup Rules Set ID

1

Tags

Type=PBX;Port=6003

IP Group for the proxy server ("Type" tag is later used to identify proxy server):

General

Index

4

Name

ITSP

Type

Server

SBC Advanced

Call Setup Rules Set ID

1

Tags

Type=ITSP

3. Open the Call Setup Rules table (see Configuring Call Setup Rules), and then configure the following Call Setup rules:
Uses the value of the "Type" tag name, configured in the IP Group's 'Tags' parameter, as the source tag:

General

Index

1

Rule Set ID

1

Action

Action Subject

srctags.Type

Action Type

Modify

Action Value

param.ipg.src.tags.Type

If the source tag name "Type" equals "PBX" (i.e., SIP message from an IP Group belonging to one of the IP PBXs), then use the value of the "Port" tag name, configured in the 'Tags' parameter of the classified IP Group, as the local UDP port on the leg interfacing with the proxy server for messages sent to the proxy server:

General

Index

2

Rule Set ID

1

Condition

srctags.Type=='PBX'

Action

Action Subject

message.outgoing.local-port

Action Type

Modify

Action Value

param.ipg.src.tags.Port

If the source tag name "Type" equals "ITSP" (i.e., SIP message from the ITSP), then use the value (port number) of the local port on which the incoming message from the proxy server is received by the device, as the value of the destination tag name "Port". In other words, the value could either be "6001", "6002", or "6003". This value is then used by the IP-to-IP Routing table to determine to which IP PBX to send the message. For example, if the destination tag value is "6001", the device identifies the destination as "PBX-1":

General

Index

3

Rule Set ID

1

Condition

srctags.Type=='ITSP'

Action

Action Subject

dsttags.Port

Action Type

Modify

Action Value

message.incoming.local-port

4. Open the IP-to-IP Routing table (see Configuring SBC IP-to-IP Routing Rules), and then configure the following IP-to-IP Routing rules:
Routes calls from the IP PBXs (identified by the source tag name-value "Type=PBX") to the ITSP (identified as an IP Group):

General

Index

1

Name

PBX-to-ITSP

Match

Source Tag

Type=PBX

Action

Destination Type

IP Group

Destination IP Group

ITSP

Routes calls from the ITSP (identified by the source tag name-value "Type=ITSP") to the IP PBXs (identified by the specific port assigned to the IP PBX by the value of the destination tag name "Port"):

General

Index

2

Name

ITSP-to-PBX

Match

Source Tag

Type=ITSP

Action

Destination Type

Destination Tag

Routing Tag Name

Port